The present invention relates to a data processing apparatus capable of operating in a plurality of modes. Recently a new category of data processing apparatuses has entered the market which combines the characteristics of a calculator with that of a personal computer. These data processing apparatuses are typically hand held or small desk top machines capable of being placed within a brief case. These machines are capable of being programmed in a higher order computer language, such as BASIC. In addition to their capability of performing computer operations specified by a higher order language program, these machines typically also include many of the ordinary calculator functions included in a hand held calculator, such as addition, subtraction, multiplication and division. Machines of this type typically include alphanumeric keyboards capable of accepting user entries of strings of alphabetic characters specifying program commands in the higher order language, numeric characters and calculator type commands, such as addition, subtraction, multiplication and division.
Typically a data processing apparatus of this type will have several operating modes such as, a calculator mode, a program line entry/edit mode and a program run mode. Heretofore, these data processing apparatuses were constructed so that the user had to specify the mode of the machine prior to entry of any command or statement. Thus the user would be required to press one or more keys of the keyboard in order to place the machine in the program line entry/edit mode prior to manual entry of a set of program statements in the higher order language. Then the user would be required to exit the program entry mode and enter a program run mode via additional key inputs before this entered program could be run. Often the user would also be required to enter the program line entry/edit mode to debug or modify an existing program previously entered into the apparatus. In addition, if the user desired to operate the apparatus as an ordinary calculator, one or more of the keys must be depressed by the user in order to place the apparatus in the calculator mode, prior to entry of the numeric data and calculator type operational commands specifying the equation whose solution is desired.
This requirement for specifying differing operating modes arises at this time primarily because of the newly combined functions of the data processing apparatuses of this class. Heretofore, this combination of differing operational modes were not performed by a single machine. The prior art solution of providing one or more mode determination keys for setting the apparatus in the proper mode prior to entry of the particular commands in the specified mode solves the technical problem of placing the apparatus in the proper state to receive the desired commands. However, this solution to the technical problem introduces additional problems. Specifically, the user is now required to anticipate the mode in which the apparatus must be set and to remember to change the mode of the apparatus if it is not in the desired mode. The requirement for additional user inputs, that is inputs which do not form a part of the commands the user desires to be executed, introduces additional opportunity for user error and mistake and therefore reduces somewhat the utility of these apparatuses.